Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London M25 Vila Real de Santo Antonio Wimbledon - London U.S. Open - New York Spain F32 Spain F7 Sweden F5 USA F26 Mexico F11 USA F2 USA F3 Mexico F1 Costa Rica F1 Canada F1 Canada F2 Canada F3 Usa F7 Usa F8 Czech Rep. F2 Czech Rep. F3 Spain F18 Usa F14 Usa F15 Usa F18 Usa F13 Usa F15 Brazil F31 Brazil F32 Brazil F33 Brazil F1 Colombia F1 Colombia F2 USA F7 Brazil F33 Portugal F4 Portugal F6 Portugal F2 Portugal F3 Spain F17 Spain F18 Mexico F10 USA F1 Usa F5 Portugal F3 Switzerland F3 M15 Oberhaching Spain F11 M15 Trnava M15 Sintra M25 Klosters M15 Sintra M25 Porto M15 Sarreguemines M25 Vale Do Lobo M15 Parnu M25 Villena Brazil F26 Portugal F5 M25 Vale do Lobo Portugal F1 M25 Faro Italy F5 Brazil F22 M25 Trimbach M15 Majadahonda M25 Grasse M25 Klosters M25 Bourg-en-Bresse M25 Caslano M25 Falun M15 Selva Gardena M15 Grenoble M15 Torello M25 Trimbach M25 Nottingham M25 Nottingham M25 Aldershot M25 Quinta do Lago M25 Quinta Do Lago M25 Vila Real de Santo Antonio Colombia F2 M25 Vale do Lobo M25 Vale do Lobo M25 Edwardsville M25 Porto Challenger Banque Nationale - Granby M25 Reus Brasilia Challenger Buenos Aires Challenger Sao Paulo Challenger Sao Paulo Challenger Charlottesville Challenger M25 Weston Caltanissetta Challenger Lima Challenger Jonkoping Challenger Turin Challenger Levene Gouldin & Thompson Tennis Challenger - Binghamton Mestre Challenger Prostejov Challenger M15 Oberhaching Milan Challenger Floridablanca Challenger Santo Domingo Challenger Como Challenger Porto Alegre Challenger Buenos Aires Challenger Santiago Challenger Sao Jose Do Rio Preto Challenger Tunis Challenger Dallas Challenger M25 Sintra Como Challenger Francavilla Challenger Lima Challenger Orlando Challenger M15 Bratislava Barletta Challenger M25 Vale do Lobo M25 Biel Nur-Sultan Challenger M25 Kiseljak Campinas Challenger M25 Sierre Sao Paulo Challenger Oeiras 1 Challenger Amersfoort Challenger Tampere Challenger M25 Hamburg Biel Challenger Oeiras 2 Challenger M25 Columbus Forli 6 Challenger Perugia Challenger Lima Challenger Mallorca Challenger Guayaquil Challenger Campinas Challenger Braunschweig Challenger Sao Leopoldo Challenger Bucaramanga Challenger Canberra Challenger Barletta Challenger Prague 2 Challenger Karlsruhe Challenger San Benedetto Challenger Porto Challenger Winnipeg Challenger Mallorca Challenger Seville Challenger Danderyd Challenger Oeiras 1 Challenger Oeiras 2 Challenger Ottignies-Louvain-la-Neuve Challenger Manama Challenger Pau Challenger Tenerife 3 Challenger Lugano Challenger Murcia Challenger Madrid Challenger Oeiras 3 Challenger Francavilla Challenger Prague Challenger Surbiton Challenger Nottingham 2 Challenger Poznan Challenger Milan Challenger Buenos Aires Challenger Seville Challenger Chennai Challenger Bangkok Challenger Curitiba Challenger Lima 2 Challenger Montevideo Challenger Braga Challenger Lisbon Challenger Ilkley Challenger Oeiras 2 Challenger Granby Challenger Pozoblanco Challenger Seville Challenger Naples Challenger - Naples Le Gosier Challenger San Remo Tennis Cup - San Remo Belo Horizonte Challenger Lugano Challenger Oeiras 2 Challenger Oeiras 3 Challenger GHI Bronx Tennis Classic - Bronx Milan Challenger Porto Challenger Rennes Challenger Braga Challenger Abierto Internacional Varonil Ciudad de Cancun - Cancun Santiago Challenger Sao Paulo Challenger Verona Challenger Estoril Open - Estoril M25 Mataro Oeiras 1 Challenger Santo Domingo Challenger Campos do Jordao Challenger Guayaquil Challenger Salvador Challenger Columbus Challenger Braunschweig Challenger Newport Beach Challenger Montevideo Challenger M25 Figueira da Foz Asuncion Challenger Sarasota Challenger Estoril Open - Estoril Sao Paulo Challenger Bucaramanga Challenger Estoril Open - Estoril Tiburon Challenger Fairfield Challenger Rio De Janeiro Challenger Roanne Challenger Santos Challenger Helsinki Challenger Arad Challenger Andria Challenger Timisoara Challenger Puerto Vallarta Challenger Tampere Challenger Phoenix Challenger Girona Challenger Belem Challenger Lisbon Challenger Santa Fe 2 Challenger Bucaramanga Challenger Braunschweig Challenger Porto Alegre Challenger Buenos Aires Challenger Guayaquil Challenger Sao Paulo Challenger Bucaramanga Challenger Blois Challenger Napoli Challenger Blumenau Challenger Estoril Open - Estoril Open de Nice Cote d'Azur - Nice Kazan Challenger M25 Sintra Bordeaux Challenger Vicenza Challenger Brasil Open - Sao Paulo Estoril Open - Estoril Copa Claro - Buenos Aires Brasil Open - Sao Paulo Mercedes Cup - Stuttgart Swiss Indoors Basel - Basel Milan Challenger Argentina Open - Buenos Aires SkiStar Swedish Open - Bastad Apia International - Sydney Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Millennium Estoril Open - Estoril Open Parc - Lyon Generali Open - Kitzbuhel Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Barletta Challenger Bet-at-home Open - Hamburg Generali Open - Kitzbuhel Swiss Open - Gstaad Generali Open - Kitzbuhel Swiss Indoors Basel - Basel Erste Bank Open - Vienna EFG Swiss Open - Gstaad US Men's Clay Court Championship - Houston Todi Challenger Braunschweig Challenger Maia 2 Challenger Rio Open - Rio de Janeiro Campinas Challenger Girona Challenger Oeiras 5 Challenger Bancolombia Open - Bogota Abierto Internacional de Salinas 'Dario Expreso' - Salinas Roma Open Challenger - Rome III Challenger Isla de Gran Canaria Ciudad de Telde - Telde Nielsen USTA Pro Tennis Championship - Winnetka Moncton Men's Challenger - Moncton Oldum Brown Vancouver Open - Vancouver Semgroup Challenger - Tulsa Sacramento Challenger - Sacramento Ford Tennis Championships - Louisville National Bank Men's Rimouski Challenger - Rimouski JSM Challenger of Champaign - Urbana Challenger Britania Zavaleta - Puebla Salinas Challenger Lille Challenger Estoril Open - Estoril Bet-at-home Open - Hamburg Lisbon Challenger Lisbon Challenger Maia Challenger Santiago Challenger Sao Paulo Challenger Dallas Challenger Le Gosier Challenger Recife Challenger Prague Challenger Bordeaux Challenger Campos do Jordao Challenger Campinas Challenger Recife Challenger Belo Horizonte Challenger Sao Jose Do Rio Preto Challenger Sao Leopoldo Challenger Guayaquil Challenger Sao Paulo Challenger Bucaramanga Challenger Florianopolis Challenger Le Gosier Challenger Dallas Challenger Caltanissetta Challenger M15 Torello Oeiras 4 Challenger Biella 7 Challenger St. Remy Challenger Forli Challenger San Juan Challenger Rio De Janeiro Challenger Montevideo Challenger Sao Leopoldo Challenger Santos Challenger Sao Paulo Challenger Itajai Challenger Campinas Challenger Biel Challenger Montevideo Challenger Bogota Challenger Barranquilla Challenger Itajai Challenger Sao Paulo Challenger Aix En Provence Challenger Tunis Challenger Furth Challenger Marburg Challenger Estoril Challenger Campinas Challenger Porto Alegre Challenger Knoxville Challenger Champaign Challenger Panama City Challenger Dallas Challenger Santo Domingo Challenger Santos Challenger Lexington Challenger Le Gosier Challenger Sarasota Challenger Savannah Challenger Aix En Provence Challenger Bordeaux Challenger Mestre Challenger Braunschweig Challenger Aptos Challenger Vancouver Challenger Buenos Aires Challenger Como Challenger Maia 1 Challenger Meknes Challenger Irving Challenger Genova Challenger Bendigo Challenger Corrientes Challenger Santiago Challenger Guayaquil Challenger Montevideo Challenger Bangkok Challenger Bucaramanga Challenger Forli 5 Challenger Roseto Degli Abruzzi 2 Challenger Rio De Janeiro Challenger Madrid Challenger Rome 1 Challenger Montevideo Challenger Porto Alegre Challenger Montechiarugolo - Parma Challenger Yokohama Challenger Rome Challenger Bordeaux Challenger Bordeaux Challenger Buenos Aires Challenger Lisbon Challenger Scheveningen Challenger Kosice Challenger Marburg Challenger Rome Challenger Montevideo Challenger VTR Open - Vina del Mar Las Franquesas del Valles Challenger Campinas Challenger Genova Challenger Cary 1 Challenger Montevideo Challenger Yokohama Challenger ATP Challenger Tour Finals Sao Paulo Challenger Braunschweig Challenger Buenos Aires Challenger Millennium Estoril Open - Estoril Ann Arbor Challenger Tenerife 1 Challenger Bordeaux Challenger San Marino Challenger Lima Challenger Gerry Weber Open - Halle Cherbourg Challenger Braga Challenger Lima Challenger Lugano Challenger Aix En Provence Challenger Zadar Challenger Qatar ExxonMobil Open - Doha Oeiras 4 Challenger Las Vegas Challenger Montevideo Challenger Braga Challenger Bergamo Challenger Helsinki Challenger Lima 2 Challenger Tenerife 2 Challenger Tampere Challenger Girona Challenger Oeiras 4 Challenger Biella Challenger Zagreb Challenger Lyon Challenger Sony Ericsson Open - Miami Ilkley Challenger Campinas Challenger Brasov Challenger Porto Challenger Forli 4 Challenger Cary Challenger Todi Challenger Porto 2 Challenger Sibiu Challenger Valencia Challenger Blois Challenger Campinas Challenger Guayaquil Challenger Bangkok Challenger Campinas Challenger Oeiras 1 Challenger Sao Paulo Challenger Oeiras 3 Challenger Tenerife 1 Challenger Tampere Challenger Sopot Challenger Charleston Challenger Lisbon Challenger Buenos Aires Challenger Guayaquil Challenger Winnipeg Challenger Porto Challenger Poznan Challenger 2007 Knoxville Challenger - Knoxville Braga Challenger Bordeaux Challenger BNP Paribas Open - Indian Wells Estoril Open - Estoril Delray Beach International Tennis Championships - Delray Beach Pilot Pen Tennis - New Haven VTR Open - Vina del Mar Sony Ericsson Open - Miami Delray Beach International Tennis Championships - Delray Beach BNP Paribas Open - Indian Wells Citi Open - Washington Portugal Open - Oeiras U.S. National Indoor Tennis Championships - Memphis Delray Beach Open - Delray Beach Portugal Open - Oeiras Abierto Mexicano Telcel - Acapulco Millennium Estoril Open - Estoril BB&T Atlanta Open - Atlanta Miami Open - Miami Gonet Geneva Open - Geneva Millennium Estoril Open - Estoril Brasil Open - Sao Paulo Millennium Estoril Open - Estoril Winston-Salem Open - Winston-Salem Konzum Croatia Open - Umag Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Stockholm Open - Stockholm Argentina Open - Buenos Aires Open 13 Provence - Marseille Swiss Indoors Basel - Basel Millennium Estoril Open - Estoril Abierto Mexicano - Los Cabos Francavilla Challenger Brasil Open - Sao Paulo BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells Cincinnati Open - Cincinnati Barletta Challenger Monterrey Challenger Waco Challenger Mauthausen Challenger Santo Domingo Challenger Ilkley Challenger Yokkaichi Challenger Milan Challenger Millennium Estoril Open - Estoril Western & Southern Open - Cincinnati Copa Claro - Buenos Aires Miami Open - Miami Shenzhen Open - Shenzhen Sony Open Tennis - Miami Sony Ericsson Open - Miami Campbells Hall of Fame Tennis Championships - Newport St. Petersburg Open - St. Petersburg Mutua Madrid Open - Madrid Aircel Chennai Open - Chennai BNP Paribas Open - Indian Wells Wimbledon - London Hopman Cup - Nice U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Montevideo Challenger Davis Cup, Group 2, 2R, POR-TUN 4-1 Davis Cup, Group II, 2R, POR-LTU 5-0 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group I, 1R, POR-ISR 5-0 Davis Cup, Group I, 2R, POR-UKR 4-1 Davis Cup, Group I, 1R, ROU-POR 3-1 Davis Cup, Group I, PO, POR-POL 4-0 U.S. Open - New York Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) U.S. Open (juniors) Wimbledon (juniors) Davis Cup, Group 1, 1R, GEO-POR 3-2 Davis Cup, Group B, Manchester French Open (juniors) Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, PO, POR-SLO 5-0 Davis Cup, Group I, 2R, SWE-POR 3-2 Wimbledon (juniors) U.S. Open (juniors) Davis Cup, Group I, 1R, POR-AUT 1-4 Australian Open (juniors) French Open (juniors) Davis Cup, World Group, Q, NED-SUI 3-2 All Lower level tournaments Olympics - Rio de Janeiro